#pragma once
#include "../Memory.hpp"
#include "../../cs2 dumper/buttons.hpp"
#include "../../cs2 dumper/offsets.hpp"

namespace buttons
{
    inline DWORD attack = cs2_dumper::buttons::attack;
    inline DWORD attack2 = cs2_dumper::buttons::attack2;
    inline DWORD back = cs2_dumper::buttons::back;
    inline DWORD duck = cs2_dumper::buttons::duck;
    inline DWORD forward = cs2_dumper::buttons::forward;
    inline DWORD jump = cs2_dumper::buttons::jump;
    inline DWORD left = cs2_dumper::buttons::left;
    inline DWORD lookatweapon = cs2_dumper::buttons::lookatweapon;
    inline DWORD reload = cs2_dumper::buttons::reload;
    inline DWORD right = cs2_dumper::buttons::right;
    inline DWORD showscores = cs2_dumper::buttons::showscores;
    inline DWORD sprint = cs2_dumper::buttons::sprint;
    inline DWORD turnleft = cs2_dumper::buttons::turnleft;
    inline DWORD turnright = cs2_dumper::buttons::turnright;
    inline DWORD use = cs2_dumper::buttons::use;
    inline DWORD zoom = cs2_dumper::buttons::zoom;
}

namespace client_dll
{
    inline DWORD dwCSGOInput = cs2_dumper::offsets::client_dll::dwCSGOInput;
    inline DWORD dwEntityList = cs2_dumper::offsets::client_dll::dwEntityList;
    inline DWORD dwGameEntitySystem = cs2_dumper::offsets::client_dll::dwGameEntitySystem;
    inline DWORD dwGameEntitySystem_highestEntityIndex = cs2_dumper::offsets::client_dll::dwGameEntitySystem_highestEntityIndex;
    inline DWORD dwGameRules = cs2_dumper::offsets::client_dll::dwGameRules;
    inline DWORD dwGlobalVars = cs2_dumper::offsets::client_dll::dwGlobalVars;
    inline DWORD dwGlowManager = cs2_dumper::offsets::client_dll::dwGlowManager;
    inline DWORD dwLocalPlayerController = cs2_dumper::offsets::client_dll::dwLocalPlayerController;
    inline DWORD dwLocalPlayerPawn = cs2_dumper::offsets::client_dll::dwLocalPlayerPawn;
    inline DWORD dwPlantedC4 = cs2_dumper::offsets::client_dll::dwPlantedC4;
    inline DWORD dwPrediction = cs2_dumper::offsets::client_dll::dwPrediction;
    inline DWORD dwSensitivity = cs2_dumper::offsets::client_dll::dwSensitivity;
    inline DWORD dwSensitivity_sensitivity = cs2_dumper::offsets::client_dll::dwSensitivity_sensitivity;
    inline DWORD dwViewAngles = cs2_dumper::offsets::client_dll::dwViewAngles;
    inline DWORD dwViewMatrix = cs2_dumper::offsets::client_dll::dwViewMatrix;
    inline DWORD dwViewRender = cs2_dumper::offsets::client_dll::dwViewRender;
    inline DWORD dwWeaponC4 = cs2_dumper::offsets::client_dll::dwWeaponC4;
}

namespace engine2_dll
{
    inline DWORD dwBuildNumber = cs2_dumper::offsets::engine2_dll::dwBuildNumber;
    inline DWORD dwNetworkGameClient = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient;
    inline DWORD dwNetworkGameClient_clientTickCount = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_clientTickCount;
    inline DWORD dwNetworkGameClient_deltaTick = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_deltaTick;
    inline DWORD dwNetworkGameClient_isBackgroundMap = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_isBackgroundMap;
    inline DWORD dwNetworkGameClient_localPlayer = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_localPlayer;
    inline DWORD dwNetworkGameClient_maxClients = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_maxClients;
    inline DWORD dwNetworkGameClient_serverTickCount = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_serverTickCount;
    inline DWORD dwNetworkGameClient_signOnState = cs2_dumper::offsets::engine2_dll::dwNetworkGameClient_signOnState;
    inline DWORD dwWindowHeight = cs2_dumper::offsets::engine2_dll::dwWindowHeight;
    inline DWORD dwWindowWidth = cs2_dumper::offsets::engine2_dll::dwWindowWidth;
}